home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Shareware Grab Bag
/
Shareware Grab Bag.iso
/
007
/
d86v311a.arc
/
01INTROD.DOC
< prev
next >
Wrap
Text File
|
1987-11-24
|
12KB
|
254 lines
CHAPTER 1 INTRODUCTION AND LEGAL TERMS 1-1
Introduction
D86 is a screen-oriented assembly-language debugger for the IBM-
PC, compatibles, and several not-so-compatibles (Wang-PC, TI-PC,
Tandy 2000, and Sanyo 55x). D86 is the finest debugger
available, at any price under any conditions, for the following:
1. Learning 8086 assembly language.
2. Exploring the machine state of your computer (memory
structure, registers, etc.)
3. Doing assembly-language program development using my A86
assembler.
4. Doing any kind of debugging involving the floating-point (8087
or 287) coprocessor.
In contrast to software firms who attempt to restrict the
distribution of their software through protection schemes, I
encourage free distribution, and trust that those who use my
products will pay for them. Please keep in mind the fundamental
good spirit of free-distribution software as you endure the
following barrage of legalities. Then evaluate the outstanding
value that the D86 package offers you. I assure you that you
will not be disappointed.
Legal Terms and Conditions
This package is provided to you under the following conditions:
1. You may copy this entire package, and give it to anyone who
accepts these terms. The copies you distribute must be
complete and unmodified. You do not have to be registered to
distribute this package.
2. You may execute the programs in this package, in order to
evaluate them. If you decide that any of this package is of
use to you, you must become a registered user by sending $50
US ($52 overseas) to:
Eric Isaacson
416 E. University Street
Bloomington, IN 47401
For your convenience, I now accept Visa and MasterCard, by
telephone. My number is (812)339-1811.
For the convenience of users in Great Britain, I have author-
ized the firm Shareware Marketing to collect registrations for
me. (But the printed version of the manual is not yet
available from them; if you want it, you should order directly
from me.) If you don't want the update right away you can ask
1-2
them to give you a voucher good for an update in the future.
We'll try to keep the prices about the same whether you
register through me or through them; it's your choice. Their
address is 87 High Street, Tonbridge, Kent TN9 1RX; telephone
0732 771344. They'll send me a list of registered users at the
end of every month, and I'll send an acknowledgement to each
user when I get the list. So if you haven't heard from me by
the third week of the month following your registration with
them, please let me know.
Your registration includes a single update diskette (5.25
inch, double density). You may order further updates for $10
US, or $12 US if you are overseas. Once you register for this
package, you are registered for all future versions. As long
as I'm in business, you can get the latest version for just
the update fee.
To use D86, you must have the associated assembler, A86. A
copy of A86 (without all of its documentation) is included in
the D86 package. If you are using D86 to debug only programs
written in languages other than A86, then you do not need to
register for A86. If you are programming in A86, then you
must register for A86. There is a discount for combined
registration of A86 and D86. Instead of $50+$50 = $100, the
charge for both packages is $80 ($82 overseas).
I also offer a printed version of this manual, covering both
A86 and D86. The manual is printed on sheets 8.5 inches high
and 7 inches wide, with a plastic ring-style binding so the
book can lay flat. If you order with your registration the
manual is an extra $10 to the U.S., $18 to England and Europe,
$22 to further points. If you've already registered and now
want the manual, add $10 for the update disk that the manual
is bundled with. There is a limit of one manual per computer
registered (except you may reorder when there is a substantial
revision to the manual).
Indiana residents need to add sales tax. At the current rate
of 5%, the prices for Indiana residents are $52.50 for one
product, $63 one product with manual, $84 both products,
$94.50 both products with manual, $21 manual if already
registered.
Educational institutions and training facilities MUST be
registered in order to use D86 in courses. Contact me for
special terms.
Companies and government agencies MUST be registered in order
to use D86 for their work. Again, contact me for special
terms.
3. You may not sell this package to anyone. If you distribute
this package on a diskette, any fees you collect must be
specified as materials/handling, and may not exceed $10 for
the diskette.
1-3
4. You are completely responsible for determining the fitness or
usability of this package. I will not be liable for any
damages, of any kind, arising from any failure of any programs
in this package to perform as expected.
Overview of D86
D86 is a screen-oriented program that allows you to troubleshoot
faulty computer programs written for the IBM-PC, Wang-PC, TI-PC,
or Sanyo computer. It "freezes" the state of your program, and
allows you to investigate the values of registers, flags, and
memory. You can monitor your program's execution by stepping it
one instruction or procedure at a time; or you can start your
program running, telling D86 to stop it when it reaches certain
locations. D86 recognizes the symbol-table output of the A86
assembler, creating a symbolic disassembly of your A86 program,
and allowing you to refer to locations and variables by name.
The primary design criterion for D86 is ease of use. This is
reflected in the most notable features of D86:
* You don't need to ask D86 what the values of registers and
flags are. They are there, automatically, at a fixed location
on the screen.
* You don't need to ask D86 where in your program you are
stopped. A disassembly is always generated, at another fixed
location on the screen. The disassembly gives a hefty chunk of
your program, not just the single instruction you are at. A
cursor next to the disassembly marks the current location. The
disassembly chunk remains fixed as you step though it, allowing
you to follow the flow of the program much more easily. If you
wrote the program using A86, the disassembly is symbolic,
giving instruction operands by name, and labelling disassembly
locations when possible.
* You don't need to ask D86 what is on the machine stack. A
display of the top elements of the stack is always generated,
at yet another fixed location on the screen.
* You can set up windows into memory, displaying memory contents
in a variety of types. The types can even be mixed, to display
complicated structures. The windows will stay at the same
location until you turn them off, allowing you to watch what
your program is doing to those memory locations.
* If you have an 8087 or 287 floating-point chip, D86 will generate
complete window of the 87 state. The values of the stack
elements are in a readable decimal format, with suppression of
unneccessary zeroes, and scientific notation only if necessary.
* You can, at any time, enable a help-window, to guide you
through debugger commands. You will be astounded by the
sophistication of this help-facility, especially since other
debuggers offer no on-line help whatsoever.
1-4
* All of the above-mentioned windows, except for the last two,
exist on the screen at the same time. You don't have to switch
between them.
* You can single-step your program with single keystrokes, rather
than sequences of arcane commands. There are several flavors
of single-step keys, clustered together on the function-keypad.
This, combined with the automatic nature of the display, allows
you to single-step very quickly. You feel like you are
actually watching your program run.
* Much of D86's command language is simply the A86 assembly
language itself. You can type in any A86 instruction, to be
executed immediately. You use this to set registers and
variables, perform arithmetic, jump to another location, etc.
The immediate-execution feature makes D86 the most effective
tool available for teaching 86 architecture: the student can
watch the effects of instructions on registers, flags, and
memory.
* You can patch programs in memory, using the full power of the
A86 assembly language.
Who IS That Guy?
For those of you who wish to know what credentials I have for
producing programs that meet the above claims, let me tell you
who I am. I am an independent software consultant. I have
worked with Intel microprocessors since the early days of the
8080. As an employee of Intel, I was a part of the two-man team
that implemented the first ASM86 assembler. I am one of the
world's leading authorities on the entire 86-family of
microcomputers, having completed numerous major projects
involving the 8086, and 80186, and the 80286. I have completed
a book, "The 80386/387 Architecture", by Morse, Isaacson, and
Albert, published by Wiley and Sons. Look for it in your
bookstore.
A86 and D86 themselves are mature, solid programs. They have
been in existence for almost 4 years, running first under my
own, proprietary operating system; then later under the Xenix
operating system on Altos computers, used by myself and my
clients.
Although I have been unknown to the world of the IBM-PC until
A86 and D86, I intend to change all that in the next couple of
years. Peter Norton, watch out.
1-5
How to Get in Touch With Me
For earlier versions of D86, I didn't give out my telephone
number, because I was afraid that all my time would be chewed
up giving telephone support. But then I attended a convention
of shareware programmers, in which the Big Boys (Wallace,
Button, Magee, etc.) unanimously agreed that a product needs
telephone support to be successful. So I'll field questions from
REGISTERED users (and you can register on the spot, with a credit
card). And, of course, I'll accept bug reports from anyone.
So now your choices for contacting me are:
1. Phone me by voice at (812)339-1811. Have your credit card
ready if you haven't registered yet. If you get an answering
machine, give your card number, expiration date, name as it
appears on the card, address, city, state, zip, phone number
with area code, which product or products your are registering
for, and the amount.
2. Write to me.
3. Leave me bulletin-board mail, on the Bloomington PC-Link
Central bulletin board, at (812)335-7252; or Indiana On-Line,
at (812)332-7227. I'll reply on the same board.
PLEASE contact me if you find bugs in my programs; I'll fix them!
It's very frustrating to hear about people telling each other
about bugs, and not telling me. I still await your bug list,
Greg Wettstein.